package com.sf.fy.uav.common.response.operational;

import cn.afterturn.easypoi.excel.annotation.Excel;
import cn.afterturn.easypoi.excel.annotation.ExcelCollection;
import cn.afterturn.easypoi.excel.annotation.ExcelTarget;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @author ta136817
 */
@Data
@ExcelTarget("commodityQuery")
public class OrderInfoRes {
    @ApiModelProperty("订单主键")
    private String id;

    @ApiModelProperty("订单编号")
    @Excel(name = "订单编号", width = 30,needMerge = true)
    private String tcWaybillNo;

    @ApiModelProperty("景区id")
    private String scenicSpotId;

    @ApiModelProperty("景区名称")
    @Excel(name = "景区名称", width = 30,needMerge = true)
    private String scenicSpotName;

    @ApiModelProperty("商家id")
    private String businessId;

    @ApiModelProperty("商家名称")
    private List<String> businessNameList;

    @ApiModelProperty("商品列表(包含商品名称和图片以及商家名称)")
    @ExcelCollection(name="商品列表")
    private List<CommodityQuery> commodityList;

    @ApiModelProperty("商品数量")
    private Integer cnt;

    @ApiModelProperty("售价")
    private BigDecimal price;

    @ApiModelProperty("订单金额")
    @Excel(name = "订单金额", width = 18,needMerge = true)
    private BigDecimal pricePaid;

    @ApiModelProperty("供货价")
    private BigDecimal supplyPrice;

    @ApiModelProperty("库存数量")
    private Integer amount;

    @ApiModelProperty("创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @Excel(name = "下单时间", format = "yyyy-MM-dd HH:mm:ss",width = 30,needMerge = true)
    private Date createTime;

    @ApiModelProperty("完成时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @Excel(name = "完成时间", width = 30,format = "yyyy-MM-dd HH:mm:ss",needMerge = true)
    private Date updateTime;

    @ApiModelProperty("状态 ")
    private Integer orderStatus;
    @Excel(name = "状态", width = 30,needMerge = true)
    @ApiModelProperty("状态名称")
    private String statusName;

    @ApiModelProperty("投放点id")
    private String placementPointId;

    @ApiModelProperty("处理人")
    private String processedBy;
}
